package com.yuzhihao.writejvm.format;


/**
 * 常量所属类型
 *
 * @author yzh
 * @since  2021年12月10日11:53:12
 * @see <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7-300">jvmdoc</a>
 */
public class AttributesType {

    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.2">ConstantValue</a>
     */
    public static final String ConstantValue = "ConstantValue";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.3">Code</a>
     */
    public static final String Code = "Code";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.4">StackMapTable</a>
     */
    public static final String StackMapTable = "StackMapTable";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.5">Exceptions</a>
     */
    public static final String Exceptions = "Exceptions";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.6">InnerClasses</a>
     */
    public static final String InnerClasses = "InnerClasses";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.7">EnclosingMethod</a>
     */
    public static final String EnclosingMethod = "EnclosingMethod";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.8">Synthetic</a>
     */
    public static final String Synthetic = "Synthetic";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.9">Signature</a>
     */
    public static final String Signature	 = "Signature";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.10">SourceFile</a>
     */
    public static final String SourceFile = "SourceFile";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.11">SourceDebugExtension</a>
     */
    public static final String SourceDebugExtension = "SourceDebugExtension";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.12">LineNumberTable</a>
     */
    public static final String LineNumberTable = "LineNumberTable";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.13">LocalVariableTable</a>
     */
    public static final String LocalVariableTable = "LocalVariableTable";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.14">LocalVariableTypeTable</a>
     */
    public static final String LocalVariableTypeTable = "LocalVariableTypeTable";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.15">Deprecated</a>
     */
    public static final String Deprecated = "Deprecated";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.16">RuntimeVisibleAnnotations</a>
     */
    public static final String RuntimeVisibleAnnotations = "RuntimeVisibleAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.17">RuntimeInvisibleAnnotations</a>
     */
    public static final String RuntimeInvisibleAnnotations = "RuntimeInvisibleAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.18">RuntimeVisibleParameterAnnotations</a>
     */
    public static final String RuntimeVisibleParameterAnnotations = "RuntimeVisibleParameterAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.19">RuntimeInvisibleParameterAnnotations</a>
     */
    public static final String RuntimeInvisibleParameterAnnotations = "RuntimeInvisibleParameterAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.20">RuntimeVisibleTypeAnnotations</a>
     */
    public static final String RuntimeVisibleTypeAnnotations = "RuntimeVisibleTypeAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.21">RuntimeInvisibleTypeAnnotations</a>
     */
    public static final String RuntimeInvisibleTypeAnnotations = "RuntimeInvisibleTypeAnnotations";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.22">AnnotationDefault</a>
     */
    public static final String AnnotationDefault = "AnnotationDefault";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.23">BootstrapMethods</a>
     */
    public static final String BootstrapMethods = "BootstrapMethods";
    /**
     * <a href="https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.24">MethodParameters</a>
     */
    public static final String MethodParameters = "MethodParameters";

}
